Apparatus and method for extracting feature point for recognizing obstacle using laser scanner

ABSTRACT

An apparatus and method for extracting a feature point to recognize an obstacle using a laser scanner are provided. The apparatus includes a laser scanner that is installed at a front of a traveling vehicle and is configured to obtain laser scanner data having a plurality of layers in real time. In addition, a controller is configured to separate the laser scanner data obtained by the laser scanner into a plurality of layers to extract measurement data present in each layer and determine feature points of the measurement data to classify a type of obstacle based on a plurality of stored feature points.

This application is based on and claims priority from Korean Patent Application No. 10-2013-0113659, filed on Sep. 25, 2013 in the Korean Intellectual Property Office, the disclosure of which is incorporated herein in its entirety by reference.

BACKGROUND

1. Field of the Invention

The present invention relates to an apparatus and a method for extracting a feature point to recognize an obstacle using a laser scanner, and more particularly, to an apparatus and a method for extracting a feature point to recognize an obstacle using a laser scanner, that extracts the feature point present in laser scanner data to classify a type of obstacle around a moving body using a multi-layer laser scanner.

2. Description of the Prior Art

In accordance with generalization of navigation mounted within a vehicle to provide services such as a road guide, an obstacle guide, and the like, research into an algorithm recognizing obstacles such as a vehicle other than the vehicle being driven, a pedestrian, and the like has been continuously conducted. In particular, the vehicle includes a sensor such as a radar sensor, a laser scanner, an image sensor, an ultrasonic sensor, or the like. Since each sensor has merits and demerits, a sensor fusion technology that supplements the demerits of each sensor using two or more sensors has also been developed.

Among the different types of sensors, the laser scanner has high utilization since it may provide more accurate distance information and angle information than other sensors. However, since laser scanner data obtained by the laser scanner may provide only angle and distance information, it may be difficult to classify the obstacles such as the vehicle, the pedestrian, and the like based on the laser scanner data.

SUMMARY

Accordingly, the present invention provides an apparatus and a method for extracting a feature point to recognize an obstacle using a laser scanner, that extracts the feature point present in laser scanner data to classify a type of obstacle present around a moving body using a multi-layer laser scanner.

In one aspect of the present invention, an apparatus for extracting a feature point to recognize an obstacle using a laser scanner may include: a laser scanner installed at a front of a moving body and configured to obtain laser scanner data configured of a plurality of layers in real time; and a controller configured to separate the laser scanner data obtained by the laser scanner into a plurality of layers to extract measurement data present in each layer and determine feature points of the measurement data to classify a type of obstacle based on a plurality of feature points which are pre-stored.

Furthermore, the controller may be configured to determine a form of the measurement data present in the layer and determine the number or position of measurement data present in each layer and whether the layer in which the measurement data is not present is present. The controller may be configured to restore a three-dimensional coordinate value for the measurement data using layer information and calculate a standard deviation of a distance between the moving body and the obstacle using an average value derived from the coordinate value. The controller may be configured to calculate a distance difference up to a virtual plane minimizing a distance from the coordinate values and calculate a summation of an area of each layer in which the coordinate value is present. The controller may further be configured to calculate an average value for an area of each layer in which the coordinate value is present and calculate a gradient of a line segment or a coefficient of a curve generated from the measurement data.

In another aspect of the present invention, a method for extracting a feature point for recognizing an obstacle using a laser scanner may include: obtaining, by a controller, laser scanner data configured of a plurality of layers in real time from a laser scanner installed at a front of a moving body; separating, by the controller, the laser scanner data into a plurality of layers; extracting, by the controller, measurement data present in each layer; and determining, by the controller, feature points of the measurement data to classify a type of obstacle present at the front of the moving body based on a plurality of feature points which are pre-stored.

The determination of the feature points of the measurement data may include determining a form of the measurement data present in the layer and determining the number or position of measurement data present in each layer and whether the layer in which the measurement data is not present is present. The determination of the feature points of the measurement data may further include restoring a three-dimensional coordinate value for the measurement data using layer information and calculating a standard deviation of a distance between the moving body and the obstacle using an average value derived from the coordinate value. Additionally, the determination of the feature points of the measurement data may include calculating a distance difference up to a virtual plane minimizing a distance from the coordinate values, calculating a summation of an area of each layer in which the coordinate value is present, calculating an average value for an area of each layer in which the coordinate value is present, and calculating a gradient of a line segment or a coefficient of a curve generated from the measurement data.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other objects, features and advantages of the present invention will be more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which:

FIG. 1 is an exemplary block diagram showing a main configuration of an apparatus for extracting a feature point to recognize an obstacle using a multi-layer laser scanner according to an exemplary embodiment of the present invention;

FIG. 2 is an exemplary flow chart for describing a method for extracting a feature point to recognize an obstacle using a multi-layer laser scanner according to an exemplary embodiment of the present invention; and

FIGS. 3 to 10 are exemplary views describing the method for extracting the feature point to recognize the obstacle using the multi-layer laser scanner according to the exemplary embodiment of the present invention.

DETAILED DESCRIPTION

It is understood that the term “vehicle” or “vehicular” or other similar term as used herein is inclusive of motor vehicles in general such as passenger automobiles including sports utility vehicles (SUV), buses, trucks, various commercial vehicles, watercraft including a variety of boats and ships, aircraft, and the like, and includes hybrid vehicles, electric vehicles, combustion, plug-in hybrid electric vehicles, hydrogen-powered vehicles and other alternative fuel vehicles (e.g. fuels derived from resources other than petroleum).

Although exemplary embodiment is described as using a plurality of units to perform the exemplary process, it is understood that the exemplary processes may also be performed by one or plurality of modules. Additionally, it is understood that the term controller/control unit refers to a hardware device that includes a memory and a processor. The memory is configured to store the modules and the processor is specifically configured to execute said modules to perform one or more processes which are described further below.

Furthermore, control logic of the present invention may be embodied as non-transitory computer readable media on a computer readable medium containing executable program instructions executed by a processor, controller/control unit or the like. Examples of the computer readable mediums include, but are not limited to, ROM, RAM, compact disc (CD)-ROMs, magnetic tapes, floppy disks, flash drives, smart cards and optical data storage devices. The computer readable recording medium can also be distributed in network coupled computer systems so that the computer readable media is stored and executed in a distributed fashion, e.g., by a telematics server or a Controller Area Network (CAN).

The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items.

Unless specifically stated or obvious from context, as used herein, the term “about” is understood as within a range of normal tolerance in the art, for example within 2 standard deviations of the mean. “About” can be understood as within 10%, 9%, 8%, %, 6%, 5%, 4%, 3%, 2%, 1%, 0.5%, 0.1%, 0.05%, or 0.01% of the stated value. Unless otherwise clear from the context, all numerical values provided herein are modified by the term “about.”

Hereinafter, exemplary embodiments of the present invention will be described in more detail with reference to the accompanying drawings. However, in describing the exemplary embodiment of the present invention, technology contents well known in the art to which the present invention pertains and directly not related to the present invention will be omitted, if possible. This is to more clearly deliver the key point of the present invention so as not to obscure the present invention by omitting any unnecessary description.

FIG. 1 is an exemplary block diagram showing a main configuration of an apparatus for extracting a feature point to recognize an obstacle using a multi-layer laser scanner according to an exemplary embodiment of the present invention.

Referring to FIG. 1, an apparatus 100 (hereinafter, referred to as a feature point extraction apparatus 100) for extracting a feature point to recognize an obstacle using a multi-layer laser scanner according to an exemplary embodiment of the present invention includes an imaging device 110, a laser scanner 120, an input unit 130, an output unit 140, a storing unit 150, and a controller 160. The controller 160 may be configured to execute the imaging device 110, laser scanner 120, input unit 130, output unit 140, and storing unit 150.

The imaging device 110 may be installed at a front of a moving body, that is, a traveling vehicle (e.g., vehicle being driven), to obtain image data with respect to the front of the traveling vehicle at a current location of the traveling vehicle and provide the obtained image data to the controller 160. Further, the laser scanner 120 may be disposed within the traveling vehicle to obtain laser scanner data of the front of the traveling vehicle and provide the obtained laser scanner data to the controller 160. The laser scanner data may include a plurality of multi-layers and may be a multi-layer laser scanner. In particular, the laser scanner 120 may use a light detection and ranging (LiDAR) laser radar, but is not particularly limited thereto, and various types of sensors and laser scanners corresponding thereto may be used.

The input unit 130 may be configured to receive number information and text information, and transfer a key signal input with respect to a function control of the feature point extraction apparatus 100 of a variety of functions to the controller 160. The input unit 130 may be formed by a touch pad or a key pad having a general key arrangement according to a provisioning form of the feature point extraction apparatus 100. The input unit 130 may include a touch screen. In particular, the input unit 130 may be displayed on the output unit 140. According to the exemplary embodiment of the present invention, the input unit 130 may be configured by the touch pad or the touch screen to improve user convenience. The output unit 140 may be configured to display screen data, for example, various menu data, external image data of a front of the traveling vehicle, and the like, generated during running a program by an operation of the controller 160. The storing unit 150 may be configured to store application programs (e.g., a program for each separating a plurality of layers configuring the laser scanner data, a program for extracting the feature point included in the laser scanner data, and the like) necessary to operate functions according to the exemplary embodiment of the present invention.

The controller 160 may be configured to separate the laser scanner data obtained by the laser scanner 120 into the plurality of layers to extract measurement data present in each layer and determine a feature point of the measurement data to classify a type of obstacle based on a plurality of feature points which are pre-stored. More specifically, the controller 160 may be configured to determine a form of the measurement data present in the layer, the number or position of measurement data present in each layer, and whether the layer which does not have the measurement data is present in the layers.

In addition, the controller 160 may be configured to restore a three-dimensional coordinate value for the measurement data using layer information and calculate standard deviation of a distance between the traveling vehicle and the obstacle using an average value derived from the coordinate value. The controller 160 may be configured to calculate a distance difference up to a virtual plane to minimize a distance from the coordinate values and calculate a sum of an area of each layer in which the coordinate value is present. Further, the controller 160 may be configured to calculate an average value of the area of each layer in which the coordinate value is present and calculate a gradient of a line segment or a coefficient of a curve generated from the measurement data. The type of obstacle determined from the laser scanner data may be more accurately classified by the above-mentioned operations in the controller 160.

FIG. 2 is an exemplary flow chart describing a method for extracting a feature point to recognize an obstacle using a multi-layer laser scanner according to an exemplary embodiment of the present invention. FIGS. 3 to 10 are exemplary views describing the method for extracting the feature point for recognizing the obstacle using the multi-layer laser scanner according to the exemplary embodiment of the present invention.

Referring to FIGS. 2 to 10, at S11, the controller 160 may be configured to receive the laser scanner data having the plurality of layers obtained by the laser scanner 120 installed at the front of the traveling vehicle which is the moving body. At S13, the controller 160 may be configured to separate the laser data received from the laser scanner 120 into the plurality of layers. The plurality of layers may be configured of the layers having four-stratums of layer 0 to layer 3 as shown in FIG. 5.

At S15, the controller 160 may be configured to analyze the plurality of layers which are separated and extract the measurement data present in each layer. In particular, the measurement data is data formed when the laser collides (e.g., hits, reaches, or the like) with the obstacle. Further, at S17, the controller 160 may be configured to determine the feature point of the measurement data and compare the feature point of the determined measurement data with feature points stored in the storing unit 150. The stored feature points definitions are shown in the following Table 1 and stored feature points may be mapped to (e.g., compared to) a reference value to classify the obstacle that corresponds to the measurement data as a vehicle or a pedestrian.

TABLE 1 Feature points Meaning f1 an L-shape best representing distribution of points f2 a width in a line axis of a straight line best representing distribution of points f3 a height in a line axis of a straight line best representing distribution of points f4 an area in a line axis of a straight line best representing distribution of points f5 the number of data of layer 0 f6 the number of data of layer 1 f7 the number of data of layer 2 f8 the number of data of layer 3 f9 the number of layers in which measurement data is present f10 standard deviation of a distance from an average point of (x, y, z) values f11 planarity of (x, y, z) values f12 a summation of area of each layer f13 an average of area of each layer f14 gradient of a line segment (linear expression) best representing the number of points f15 coefficient of a quadratic term of a curve (quadratic expression) best representing the number of points f16 coefficient of a linear term of a curve (linear expression) best representing the number of points

More specifically, the controller 160 may be configured to analyze the extracted measurement data and determine a feature point that corresponds to f1. In particular, when the extracted measurement data (reference numeral 10) form a shape similar to an L-shape which is a reference numeral 12 of FIG. 3, r_(min) may be extracted using a point (reference numeral 11) closest to an origin amongst the measurement data. In addition, the controller 160 may be configured to generate a straight line that best represents distribution of the measurement data such as a reference numeral 13 of FIG. 4 and calculate a width, a height, and an area (corresponding to f2, f3, and f4 of Table 1) represented by the measurement data based on the reference numeral 13 to extract a feature which is slightly changed based on a direction of the obstacle. As a result, the controller 160 may be configured to determine an approximate size of the sensed obstacle.

In addition, the controller 160 may be configured to determine the number of measurement data present in layer 0 to layer 3 which are the plurality of layers as shown in FIG. 5 to correspond to the feature points of f5 to f8 of Table 1 and the controller 160 may be configured to determine the number of layers in which the measurement data is present as shown in FIG. 6 to correspond to the feature point of f9 of Table 1. For example, when a moving pedestrian is sensed as the obstacle, the different number of measurement data may be determined for each layer as shown in FIG. 5 and the layer which the measurement data is not present may be present based on a height of the pedestrian.

The controller 160 may be configured to restore x, y, and z coordinates of the obstacle using information layer 0 to layer 3 as shown in FIG. 7 to correspond to the feature point of f10 of Table 1. In particular, although the drawing shows that an angle made by each layer is formed at about 0.8°, the angle may not necessarily be limited thereto and may be modified by those skilled in the art. The controller 160 may be configured to use an average value of the restored x, y, and z values as a standard deviation of a distance between the traveling vehicle and the obstacle. Further, to restore the x, y, and z coordinates of the obstacle, the controller 160 may be configured to use the following Equation 1 and to use the average value of the restored x, y, and z values as the standard deviation of the distance between the traveling vehicle and the obstacle, the controller 160 may be configured to use the following equations.

$\begin{matrix} {\left( {r,\theta,L} \right) = \left\{ \begin{matrix} {x = {r*{\cos (\theta)}*{\cos \left( {{- 1.2} + {0.8L}} \right)}}} \\ {v = {r*{\sin (\theta)}*{\cos \left( {{- 1.2} + {0.8L}} \right)}}} \\ {z = {r*{\sin (\theta)}\left( {{- 1.2} + {0.8L}} \right)}} \end{matrix} \right.} & {{Equation}\mspace{14mu} 1} \end{matrix}$

Wherein r represents a distance from a distance between the laser scanner 120 and one data among the measurement data to the plane, θ represents an angle made by the respective lasers based on the laser scanner 120, and L represents a stratum of the layer.

$\begin{matrix} {f_{10} = \sqrt{\frac{1}{np}{\sum\limits_{n = 1}^{np}{{\left( {x,y,z} \right)_{n} - \left( {x,y,z} \right)_{mean}}}^{2}}}} & {{Equation}\mspace{14mu} 2} \end{matrix}$

Wherein n_(p) represents the number of measurement data.

In addition, the controller 160 may be configured to derive planarity of the calculated x, y, and z coordinate values to correspond to the feature point of f1 of Table 1. Therefore, the controller 160 may be configured to calculate a distance difference up to a plane 14 having a minimum distance from points which are reference numerals 20 a to 20 f formed by an obstacle 20 as shown in FIG. 8 using the following Equation 3.

$\begin{matrix} {f_{11} = {{1/{np}}{\sum\limits_{n = 1}^{np}\left( {x_{n} - P_{1,n}} \right)^{2}}}} & {{Equation}\mspace{14mu} 3} \end{matrix}$

Wherein x_(n) is a range in which the measurement data is distributed and P_(1,n) is a plane that enables the distance between the measurement data to recognize at a minimum.

The controller 160 may be configured to calculate a summation of the area of each layer using the x, y, and z coordinate values as shown in FIG. 9 to correspond to the feature point of f12 of Table 1 and an average of the area of each layer using the x, y, and z coordinate values as shown in FIG. 9 to correspond to the feature point of f13 of Table 1. Further, the controller 160 may be configured to calculate a gradient of a line segment or a coefficient of a curve using the number of measurement data present in layer 0 to layer 3 such as L0 to L3 as shown in FIG. 10 to correspond to the feature point corresponding to f14 to f16 of Table 1.

More specifically, when the measurement data present in the layer is substantially similar to the L-shape such as the reference numeral 10 of FIG. 3, the controller 160 may be configured to recognize that the measurement data is generated by the vehicle. In addition, since the measurement data present in the layer may be present in each layer as shown in FIG. 5 and the number of measurement data present in each layer may be different, the controller 160 may be configured to recognize that the measurement data is generated by the pedestrian 20. Thus, the controller in the exemplary embodiment of the present invention may be configured to determine the type of obstacle positioned at the front of the traveling vehicle and may determine the number of obstacles more accurately using the feature points extracted by analyzing the measurement data present in the laser scanner data. According to the exemplary embodiment of the present invention, the feature point present in the laser scanner data obtained by the multi-layer laser scanner may be extracted, to classify the type of the obstacle present around the moving body more accurately.

Hereinabove, the apparatus and the method for extracting the feature point to recognize the obstacle using the laser scanner have been described with reference to the exemplary embodiment of the present invention. The exemplary embodiments of the present invention have been disclosed in the present specification and the accompanying drawings and specific terms have been used, but are merely used in a general mean to easily describe the technical content of the present invention and assist in understanding the present invention and do not limit the scope of the present invention. It is obvious to those skilled in the art to which the present invention pertains that various modifications may be practiced based on the technical ideal of the present invention, in addition to the exemplary embodiments disclosed herein. 

What is claimed is:
 1. An apparatus for extracting a feature point to recognize an obstacle using a laser scanner, the apparatus comprising: a laser scanner installed at a front of a traveling vehicle and configured to obtain laser scanner data having a plurality of layers in real time; and a controller configured to separate the laser scanner data obtained by the laser scanner into a plurality of layers to extract measurement data present in each layer and determine feature points of the measurement data to classify a type of obstacle based on a plurality of stored feature points.
 2. The apparatus according to claim 1, wherein the controller is configured to determine a form of the measurement data present in the layer.
 3. The apparatus according to claim 2, wherein the controller configured to determine a number or position of measurement data present in each layer and whether the layer in which the measurement data is not present is present.
 4. The apparatus according claim 2, wherein the controller is configured to restore a three-dimensional coordinate value for the measurement data using layer information and calculate a standard deviation of a distance between the traveling vehicle and the obstacle using an average value derived from the coordinate value.
 5. The apparatus according to claim 2, wherein the controller is configured to calculate a distance difference up to a virtual plane to minimize a distance from the coordinate values.
 6. The apparatus according to claim 2, wherein the controller is configured to calculate a summation of an area of each layer in which the coordinate value is present.
 7. The apparatus according to claim 2, wherein the controller is configured to calculate an average value for an area of each layer in which the coordinate value is present.
 8. The apparatus according to claim 2, wherein the controller is configured to calculate a gradient of a line segment or a coefficient of a curve generated from the measurement data.
 9. A method for extracting a feature point to recognize an obstacle using a laser scanner, the method comprising: obtaining, by a controller, laser scanner data having a plurality of layers in real time from the laser scanner installed at a front of a traveling vehicle; separating, by the controller, the laser scanner data into a plurality of layers; extracting, by the controller, measurement data present in each layer; and determining, by the controller, feature points of the measurement data to classify a type of obstacle present at the front of the traveling vehicle based on a plurality of stored feature points.
 10. The method according to claim 9, wherein the determination of the feature points of the measurement data includes: determining, by the controller, a form of the measurement data present in the layer.
 11. The method according to claim 10, wherein the determination of the feature points of the measurement data includes: determining, by the controller, the number or position of measurement data present in each layer and whether the layer in which the measurement data is not present is present.
 12. The method according to claim 10, wherein the determination of the feature points of the measurement data includes: restoring, by the controller, a three-dimensional coordinate value for the measurement data using layer information; and calculating, by the controller, a standard deviation of a distance between the traveling vehicle and the obstacle using an average value derived from the coordinate value.
 13. The method according to claim 10, wherein the determination of the feature points of the measurement data includes: calculating, by the controller, a distance difference up to a virtual plane to minimize a distance from the coordinate values.
 14. The method according to claim 10, wherein the determination of the feature points of the measurement data includes: calculating, by the controller, a summation of an area of each layer in which the coordinate value is present.
 15. The method according to claim 10, wherein the determination of the feature points of the measurement data includes: calculating, by the controller, an average value for an area of each layer in which the coordinate value is present.
 16. The method according to claim 10, wherein the determination of the feature points of the measurement data includes: calculating, by the controller, a gradient of a line segment or a coefficient of a curve generated from the measurement data.
 17. A non-transitory computer readable medium containing program instructions executed by a controller, the computer readable medium comprising: program instructions that obtain laser scanner data having a plurality of layers in real time from a laser scanner installed at a front of a traveling vehicle; program instructions that separate the laser scanner data into a plurality of layers; program instructions that extract measurement data present in each layer; and program instructions that determine feature points of the measurement data to classify a type of obstacle present at the front of the traveling vehicle based on a plurality of stored feature points.
 18. The non-transitory computer readable medium of claim 17, further comprising: program instructions that determine a form of the measurement data present in the layer.
 19. The non-transitory computer readable medium of claim 18, further comprising: program instructions that determine a number or position of measurement data present in each layer and whether the layer in which the measurement data is not present is present.
 20. The non-transitory computer readable medium of claim 18, further comprising: program instructions that restore a three-dimensional coordinate value for the measurement data using layer information and calculate a standard deviation of a distance between the traveling vehicle and the obstacle using an average value derived from the coordinate value. 